#include "widget.h"
#include "ui_widget.h"

#include <QDebug>
#include <QFile>
#include <QByteArray>

Widget::Widget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Widget)
{
    ui->setupUi(this);

    // 1. 写文件
//    QFile file("E:/aaa/test.txt");
//    // 使用open打开文件时，如果文件不存在，则尝试创建该文件;如果无法创建该文件，则返回false
//    // ReadWrite：读写方式，打开文件时，将光标定位在文件开头，进行覆盖写入（从头开始覆盖）
//    // Append：追加方式，打开文件时，将光标定位在文件末尾，进行追加写入
//    // WriteOnly：只写方式，将文件清空，从头再重新写入
//    if(file.open(QIODevice::WriteOnly))
//    {
//        // 打开成功
//        QString str = "Hello World, 你好世界";
//        file.write(str.toUtf8()); // 将str转为 QByteArray 类型
//    }
//    else
//    {
//        // 打开失败
//        qDebug() << "file open error!";
//    }

    // 2. 读文件
    QFile file("E:/aaa/test.txt");
    if(file.open(QIODevice::ReadOnly))
    {
        // 打开成功，开始读取文件
        // 一次性读取所有内容
//        QByteArray buf = file.readAll();
//        qDebug() << QString(buf);

        // 按行读取
        while (!file.atEnd())
        {
            QByteArray buf = file.readLine();
            qDebug() << QString(buf);
        }
    }
    else
    {
        // 打开失败
        qDebug() << "file open error!";
    }



}

Widget::~Widget()
{
    delete ui;
}
